package done.easy_501_600;

import com.study.common.Node;
import org.junit.Test;

import static com.study.util.LogUtil.info;

/**
 * 559. Maximum Depth of N-ary Tree N叉树的最大深度
 * <p>
 * 给定一个 N 叉树，找到其最大深度。
 * 最大深度是指从根节点到最远叶子节点的最长路径上的节点总数。
 * <p>
 * 例如，给定一个 3叉树 :
 * <p>
 * 1
 * /  |  \
 * 3   2   4
 * /  \
 * 5    6
 * <p>
 * 我们应返回其最大深度，3。
 *
 * @author 大硕
 * 2019-04-08 7:16 AM
 **/
@SuppressWarnings("all")
public class MaximumDepthOfN_aryTree {

    public int maxDepth(Node root) {
        // 190408 first
        return -1;
    }

    @Test
    public void test() {
        Node root = new Node(1,
                new Node(3,
                        5, 6), new Node(2), new Node(4));
        info(maxDepth(root));
    }
}
































/*
public int maxDepth(Node root) {
    if (root==null)
        return 0;

    if (root.children==null || root.children.size()==0)
        return 1;

    int max = 0;

    for (Node node : root.children) {
        max = max(max, maxDepth(node));
    }

    return max+1;
}
*/
